#启动服务
systemctl start mysql  
systemctl enable mysql  #设置开机启动
 
 
#默认新装的mariadb密码为空，在终端直接输入mysql就能登陆数据库。
mysql
 
#如果是刚安装第一次使用，shell命令行使用此命令初始化。
mysql_secure_installation
 
#登陆数据库修改密码
use mysql; 
select host,user,plugin,authentication_string from mysql.user; #查看数据库用户信息
 
#修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'kali';
flush privileges; 
 
# 创建用户与授权
CREATE USER 'kali'@'%' IDENTIFIED BY 'kali';
grant all on *.* to 'kali'@'%' identified by 'kali';
 
#如果是忘记了 root 密码，则需要以跳过授权的方式启动 mariadb 来修改密码。
systemctl stop mariadb #先停掉服务。
mysqld_safe --skip-grant-tables &  #使用跳过授权的方式启动 mariadb。
#修改密码；更新密码后，在跳过授权启动时也不能空密码直接登陆了；关闭跳过授权启动的进程；
systemctl start mariadb #正常启动 mariadb
 
 
# 允许远程连接，【监听3306端口】修改配置文件
将/etc/mysql/mariadb.conf.d/50-server.cnf中bind-address = 127.0.0.1加# 注释掉
 
 
 
###MariaDB修改密码不生效
#用mysql_secure_installation命令设置Root密码，
#然后用工具登录发现提示 Access denied for user ‘root’@‘localhost’;
#而在命令行你发现直接用mysql就可以登录数据库，完全不用密码。
#原因：Mariadb在5.2.0以后的版本默认不再使用密码认证了，
#改用Authentication Plugin - Unix Socket插件认证。
#而Unix Socke插件认证直接忽略密码。
#解决办法，登录修改插件
update mysql.user set plugin='mysql_native_password' where User='root';